package com.ruoyi.web.mapper;

import com.ruoyi.web.domain.QgPayWithdrawalDetail;

import java.util.List;

/**
 * QGPay提现明细Mapper接口
 *
 * @date 2023-03-15
 */
public interface QgPayWithdrawalDetailMapper {
    /**
     * 查询QGPay提现明细
     *
     * @param id QGPay提现明细主键
     * @return QGPay提现明细
     */
    public QgPayWithdrawalDetail selectQgPayWithdrawalDetailById(Long id);

    /**
     * 查询QGPay提现明细列表
     *
     * @param qgPayWithdrawalDetail QGPay提现明细
     * @return QGPay提现明细集合
     */
    public List<QgPayWithdrawalDetail> selectQgPayWithdrawalDetailList(QgPayWithdrawalDetail qgPayWithdrawalDetail);

    /**
     * 新增QGPay提现明细
     *
     * @param qgPayWithdrawalDetail QGPay提现明细
     * @return 结果
     */
    public int insertQgPayWithdrawalDetail(QgPayWithdrawalDetail qgPayWithdrawalDetail);

    /**
     * 修改QGPay提现明细
     *
     * @param qgPayWithdrawalDetail QGPay提现明细
     * @return 结果
     */
    public int updateQgPayWithdrawalDetail(QgPayWithdrawalDetail qgPayWithdrawalDetail);

    /**
     * 删除QGPay提现明细
     *
     * @param id QGPay提现明细主键
     * @return 结果
     */
    public int deleteQgPayWithdrawalDetailById(Long id);

    /**
     * 批量删除QGPay提现明细
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteQgPayWithdrawalDetailByIds(Long[] ids);

    /**
     * 审核通过
     *
     * @param condition condition
     * @return {@link int}
     * @since 2023/3/22 16:25
     */
    int approve(QgPayWithdrawalDetail condition);

    /**
     * 审核拒绝
     *
     * @param condition condition
     * @return {@link int}
     * @since 2023/3/22 16:25
     */
    int reject(QgPayWithdrawalDetail condition);

    /**
     * 查询并锁定
     *
     * @param condition 查询条件
     * @return {@link QgPayWithdrawalDetail}
     * @since 2023/3/22 18:18
     */
    QgPayWithdrawalDetail getOneLock(QgPayWithdrawalDetail condition);
}
